/*
  按键控制LED
  思考：该程序响应实时性不是很好，可以怎么改进？
*/

#define KEY_FLASH 0   //定义KEY_FLASH 对应0号引脚，其实就是FLASH按键位置

void setup()
{
  Serial.begin(115200);
  Serial.setDebugOutput(true);
  pinMode(LED_BUILTIN, OUTPUT);    // 初始化LED_BUILTIN引脚模式为输出
  pinMode(KEY_FLASH, INPUT);       // 初始化Flash按键模式为输入
  digitalWrite(LED_BUILTIN, LOW); // 初始LED灯置为低电平，表示点亮
  delay(1000);                     // 延时1秒
}
//自定义按键函数
void keydo()
{
  //读出当前按键状态，1表示抬起断开，0为按下接通
  int k;
  k = digitalRead(KEY_FLASH);
  Serial.println("\r\n keydo:");
  Serial.print(k);
  Serial.println();
  digitalWrite(LED_BUILTIN, k); // 低电平灯亮，高电平灯灭
}

void loop()
{
  keydo();
  delay(500);
}
